<?php
namespace app\admin\model;
use think\Db;

class AuthModel extends BaseModel{


	/*
	* 分类接口
	* @access public
	* @param  string    $table 表名
	* @param  string    $param 分页请求条件
	* @param  string    $key   like查询字段
	* @param  string    $order 默认排序方式
	* @param  string    $time  默认时间查询字段
	* @param  string    $type  返回数据类型
	* @return mixed
	*/
    public static function AdminPage($param){

		$page=!empty($param['page'])?$param['page']:"1";
		$limit=!empty($param['limit'])?$param['limit']:"10";
	
		$map="";

	
		if(!empty($keyword)){
			$map[]=['admin.username|admin.nickname','like',"%$keyword%"];
		}
		
		if(!empty($param['start']) && empty($param['end'])){
	
			$map[]=['admin.addtime','>=',$param['start']];

		} else if(!empty($param['end']) && empty($param['start'])){

			$map[]=['admin.addtime','<=',$param['end']];

		} else if(!empty($param['start']) && !empty($param['end'])){

			$map[]=['admin.addtime','between',[$param['start'],$param['end']]];

		}

		unset($param['start']);
		unset($param['end']);


		$list=Db::name('admin_list')->alias('admin')->leftJoin(config('database.prefix').'admin_role role','admin.roleid=role.roleid' )->where($map)->order('admin.adminid desc')->field('admin.*,role.name as rolename')->page($page.','.$limit)->select();
		
		$data=array(
			'data'=>$list,
			'code'=>"0",
			'count'=>Db::name('admin_list')->alias('admin')->leftJoin(config('database.prefix').'admin_role role','admin.roleid=role.roleid' )->where($map)->count(),
			'msg'=>"请求成功"
		);

		return json_encode($data);
	

    }

	/*
	* 角色列表
	* @access public
	* @param  string    $field 查询字段
	* @param  string    $order 默认排序方式
	* @param  string    $type  返回数据类型
	* @return mixed
	*/
    public static function Rolelist($field="*",$order="px desc"){

    	return Db::name("admin_role")->where(['status'=>"1"])->order($order)->field($field)->select();
		
    }
    /*
	* 权限列表
	* @access public
	* @param  string    $field 查询字段
	* @param  string    $order 默认排序方式
	* @param  string    $type  返回数据类型
	* @return mixed
	*/
    public static function ActionList($where="",$field="*",$order="px desc"){

    	return Db::name("admin_action")->where($where)->order($order)->field($field)->select();
		
    }

    #所有权限操作分组#
	public static function ActionGroupList(){

		$list=Db::name("admin_action")->where(['type'=>"控制器",'status'=>"1"])->order('px desc')->select();
		foreach ($list as $k => $v) {
			$list[$k]['list']=Db::name("admin_action")->where(['type'=>"操作",'status'=>"1",'pid'=>$v['actionid']])->order('px desc')->select();
		}

		return $list;
	}

  

	
    
    
}
